package com.jgy.entity.vo;


import cn.hutool.core.collection.CollUtil;

import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

public enum H15EnumStartv0015 {
    V0015("v0015", 0),
    V0030("v0030", 1),
    V0045("v0045", 2),
    V0100("v0100", 3),
    V0115("v0115", 4),
    V0130("v0130", 5),
    V0145("v0145", 6),
    V0200("v0200", 7),
    V0215("v0215", 8),
    V0230("v0230", 9),
    V0245("v0245", 10),
    V0300("v0300", 11),
    V0315("v0315", 12),
    V0330("v0330", 13),
    V0345("v0345", 14),
    V0400("v0400", 15),
    V0415("v0415", 16),
    V0430("v0430", 17),
    V0445("v0445", 18),
    V0500("v0500", 19),
    V0515("v0515", 20),
    V0530("v0530", 21),
    V0545("v0545", 22),
    V0600("v0600", 23),
    V0615("v0615", 24),
    V0630("v0630", 25),
    V0645("v0645", 26),
    V0700("v0700", 27),
    V0715("v0715", 28),
    V0730("v0730", 29),
    V0745("v0745", 30),
    V0800("v0800", 31),
    V0815("v0815", 32),
    V0830("v0830", 33),
    V0845("v0845", 34),
    V0900("v0900", 35),
    V0915("v0915", 36),
    V0930("v0930", 37),
    V0945("v0945", 38),
    V1000("v1000", 39),
    V1015("v1015", 40),
    V1030("v1030", 41),
    V1045("v1045", 42),
    V1100("v1100", 43),
    V1115("v1115", 44),
    V1130("v1130", 45),
    V1145("v1145", 46),
    V1200("v1200", 47),
    V1215("v1215", 48),
    V1230("v1230", 49),
    V1245("v1245", 50),
    V1300("v1300", 51),
    V1315("v1315", 52),
    V1330("v1330", 53),
    V1345("v1345", 54),
    V1400("v1400", 55),
    V1415("v1415", 56),
    V1430("v1430", 57),
    V1445("v1445", 58),
    V1500("v1500", 59),
    V1515("v1515", 60),
    V1530("v1530", 61),
    V1545("v1545", 62),
    V1600("v1600", 63),
    V1615("v1615", 64),
    V1630("v1630", 65),
    V1645("v1645", 66),
    V1700("v1700", 67),
    V1715("v1715", 68),
    V1730("v1730", 69),
    V1745("v1745", 70),
    V1800("v1800", 71),
    V1815("v1815", 72),
    V1830("v1830", 73),
    V1845("v1845", 74),
    V1900("v1900", 75),
    V1915("v1915", 76),
    V1930("v1930", 77),
    V1945("v1945", 78),
    V2000("v2000", 79),
    V2015("v2015", 80),
    V2030("v2030", 81),
    V2045("v2045", 82),
    V2100("v2100", 83),
    V2115("v2115", 84),
    V2130("v2130", 85),
    V2145("v2145", 86),
    V2200("v2200", 87),
    V2215("v2215", 88),
    V2230("v2230", 89),
    V2245("v2245", 90),
    V2300("v2300", 91),
    V2315("v2315", 92),
    V2330("v2330", 93),
    V2345("v2345", 94),
    V2400("V2400", 95);

    private String code;
    private int value;

    private static Map<Integer, H15EnumStartv0015> map = new HashMap<>();

    public Map<Integer, H15EnumStartv0015> getMap() {
        return map;
    }

    public void setMap(Map<Integer, H15EnumStartv0015> map) {
        this.map = map;
    }
    H15EnumStartv0015(String code, int value) {
        this.code = code;
        this.value = value;
    }
    public static H15EnumStartv0015 getEnum(String code){
        List<H15EnumStartv0015> collect = Arrays.stream(H15EnumStartv0015.values()).filter(item -> item.code.equals(code)).collect(Collectors.toList());
        return  collect.size() == 0 ? null : collect.get(0);
    }
    public static H15EnumStartv0015 getEnumByValue(int index){
        if (CollUtil.isEmpty(map)) {
            map = Arrays.stream(H15EnumStartv0015.values()).collect(Collectors.toMap(
                    data -> Integer.valueOf(data.getValue()), data -> data
            ));
        }
        return map.get(index);
    }
    public String getCode() {
        return code.toLowerCase();
    }
    public int getValue() {
        return value;
    }
    public static void main(String[] args) {
        // System.out.println(H15EnumStartv0015.getEnum("0021650000").value);
    }
}
